package com.xuecheng.teaching.service;


import com.xuecheng.api.comment.model.CommentModel;
import com.xuecheng.api.comment.model.CommentStaticsModel;
import com.xuecheng.api.comment.model.QuerryCommentModel;
import com.xuecheng.api.comment.model.ReplyModel;
import com.xuecheng.api.comment.model.dto.CommentDTO;
import com.xuecheng.api.comment.model.dto.ReplyDTO;
import com.xuecheng.common.domain.page.PageRequestParams;
import com.xuecheng.common.domain.page.PageVO;

import java.util.List;

public interface TeachingService {


    /**
     *   添加评论信息
     * @param model
     * @return
     */
    CommentDTO createComment(CommentModel model);

    /**
     * 查询评论列表
     * @param params
     * @param model
     * @return
     */
    PageVO querryCommentList(PageRequestParams params, QuerryCommentModel model);

    /**
     * 课程评论统计
     * @param targetId
     * @return
     */
    CommentStaticsModel commentStatistics(Long targetId);

    /**
     * 评论点赞
     * @param commentId
     * @param userName
     * @return
     */
    Boolean praiseComment(Long commentId, String userName);

    //教育机构 的 评论列表
    PageVO querryOrgCommentList(PageRequestParams params, QuerryCommentModel model, Long companyId);

    //评论回复
    ReplyDTO commentReply(ReplyModel model);

    //评论删除
    Boolean deleteCommentById(Long commentId);

    //批量删除
    Boolean deleteComments(String[] commentIds);

    //运营平台查询 所有 评论列表
    PageVO<List<CommentDTO>> querryOrgAllCommentList(PageRequestParams params);
}
